#ifndef __SPELER_H__
#define __SPELER_H__

#include "Kaart.h"

#include <vector>
#include <string>
using namespace std;

class Spel;

//! Basisklasse voor een speler
class Speler
{
public:
	Speler(){}
	virtual ~Speler(){}
	Speler(const string& naam, const string& color)
		: m_naam( naam ), m_color( color ) {}

	// moet thread functie worden die status gaat aanpassen
	virtual void programmeerRobot(Robot* robot) = 0;
	virtual void updateBord( const Spel* spel ) = 0;

	/* geef een kaart aan de speler */
	void addKaart(Kaart * kaart);

protected:
	//! de kleur van de speler (in robot gebruikt, wss ook bij chat)
	/*! De reden waarom dit een string is, is omdat we deze makkelijker via netwerk kunnen sturen */
	string m_naam;
	string m_color;

	vector<Kaart*> m_kaarten;

};

#endif
